package com.web;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class Main {

    public static List<Map<String, Integer>> parseCsvFile(String filePath) {
        List<Map<String, Integer>> resultList = new ArrayList<>();

        try (BufferedReader br = new BufferedReader(new FileReader(filePath))) {
            String line;
            while ((line = br.readLine()) != null) {
                // 分割每一行，假设CSV文件是以制表符分隔的
                if (line.equals("评论,出现次数"))
                {
                    continue;
                }
                String[] parts = line.split(",");
                if (parts.length == 2) { // 确保每行至少有两部分：评论和次数
                    String comment = parts[0];
                    int count = Integer.parseInt(parts[1]); // 将字符串转换为整数

                    // 创建Map并添加到结果列表中
                    Map<String, Integer> commentCountMap = new HashMap<>();
                    commentCountMap.put(comment, count);
                    resultList.add(commentCountMap);
                } else {
                    System.out.println("警告：发现格式不正确的行，已跳过。");
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
            // 处理异常，例如返回null或抛出自定义异常
        }

        return resultList;
    }

    public static void main(String[] args) {
        String filePath = "src/main/java/com/web/text_files/比亚迪.csv"; // 替换为你的CSV文件路径
        List<Map<String, Integer>> parsedData = parseCsvFile(filePath);
        // 这里可以进一步处理parsedData，例如传递给前端用于词云图展示
        System.out.println(parsedData);
    }
}
